package controlador;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.DefaultListModel;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;

import negModel.*;



public class ControladorEstadoPartes {
	
	private ControladorDeVentanas contVent;
	private CargarModelo modelo=new CargarModelo();
	
	public ControladorEstadoPartes(ControladorDeVentanas contVent){
		this.contVent=contVent;

	}
	
	private class EscuchaBotonVolver implements ActionListener
	{	public void actionPerformed(ActionEvent e)
		{
			contVent.OcultarVentanaEstadoPartes();	
			contVent.AbrirVentanaTaller();
			contVent.ActualizarDinero();
			contVent.ActualizarVistaTallerAutos();
			
		}
	}

	public ActionListener getListenerBotonVolver() {
		return new EscuchaBotonVolver();
	}
	
	private class EscuchaListaPartes implements ListSelectionListener{
		public void valueChanged(ListSelectionEvent evt)
		{
			int indice=contVent.ObtenerIndiceEstadoPartes();
	       	if (indice>=0){
	    		ListaPartes lp=contVent.ObtenerJugador().getVehiculo().mostrarPartes();
	    		Parte unaParte=(Parte)lp.get(indice);
	    		Tanque tanque=(Tanque)lp.devolverParte(Tanque.class);
	    		
	    		contVent.ActualizarEtiquetasEstado (tanque.getCantComb(),unaParte.getMaxVU(),unaParte.getVidaUtil());
	       	}
		}
	}
	public ListSelectionListener getListenerListaPartes() {
		return new EscuchaListaPartes();
	}
	
	
	public DefaultListModel CargarModeloPartes (){
		return modelo.CargarModeloPartes(contVent.ObtenerJugador().getVehiculo().mostrarPartes());
	}
	
}
